/**
 * 请求工具类封装
 * @type {function(): (DateUtils.init|init)}
 */
var DateUtils = (function () {
    var DateUtils = function () {
        return new DateUtils.fn.init();
    }

    DateUtils.fn = DateUtils.prototype = {
        constructor: DateUtils,
        init: function () {

        },

        /**
         * 时间戳格式化
         * @param timestamp 时间戳（13位，到ms）
         * @param format yyyy(年) MM(月) dd(日) hh(时) mm(分) ss(秒) （如：yyyy-MM-dd hh:mm:ss）
         * @returns {*}
         */
        timestampFormat: function (timestamp, format) {
            var date = new Date(timestamp);
            var dateRule = {
                "M+": date.getMonth() + 1,
                "d+": date.getDate(),
                "h+": date.getHours(),
                "m+": date.getMinutes(),
                "s+": date.getSeconds(),
                "q+": Math.floor((date.getMonth() + 3) / 3),
                "S+": date.getMilliseconds()
            };
            if (/(y+)/i.test(format)) {
                format = format.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
            }
            for (var k in dateRule) {
                if (new RegExp("(" + k + ")").test(format)) {
                    format = format.replace(RegExp.$1, RegExp.$1.length == 1
                        ? dateRule[k] : ("00" + dateRule[k]).substr(("" + dateRule[k]).length));
                }
            }
            return format;
        },
    }

    DateUtils.fn.init.prototype = DateUtils.fn;

    return DateUtils;
})();

var DateUtils = new DateUtils();
